<?php
/**
 *  Validamos si los campos son alfanumericos de una determinada longitud
 *  Validamos que no exista
 * @param <type> $ep
 */
function validate($ep) {
    //Validacion de formulario
    $submit=$_REQUEST["submit"];
    //Sólo validaremos y ejecutaremos en caso de que se haya creado el concurso
    if($submit!=""){
        $salida=true;
        $titulo=$_REQUEST["titulo"];
        $descripcion=$_REQUEST["descripcion"];
        $fecha_inicio=$_REQUEST["fecha_inicio"];
        $fecha_fin=$_REQUEST["fecha_fin"];
        $credito=$_REQUEST["credito"];
        $max=(int)$_REQUEST["max"];
        $min=(int)$_REQUEST["min"];
        $ult=(int)$_REQUEST["ult"];
        $num_mercados=$_REQUEST["num_mercados"];
        for ($index = 0; $index < $num_mercados; $index++) {
            $nombre_campo="mercado".($index+1);
            $array_mercados[$index+1]=$_REQUEST[$nombre_campo];
        }
        if(!valid_fechas_concurso($ep, $fecha_inicio, $fecha_fin)){
            $salida=false;
        }
        if(!valid_credito($ep, $credito)){
            $salida=false;
        }
        if(!valid_titulo_concurso($ep, $titulo)){
            $salida=false;
        }
        if(!valid_descripcion_concurso($ep, $descripcion)){
            $salida=false;
        }
        if(!valid_mercados($ep, $array_mercados)){
            $salida=false;
        }
        if(!valid_puntuación($ep,$max,$min,$ult)){
            $salida=false;
        }
        //Autorelleno de formulario

            $vars= Array();
            $vars['titulo']=$titulo;
            $vars['descripcion']=$descripcion;
            $vars['fecha_inicio']=$fecha_inicio;
            $vars['fecha_fin']=$fecha_fin;
            $vars['credito']=$credito;
            $ep->vars=$vars;
//
//
//
    }else{
        $salida=false;
    }
    return $salida;
}
    /**
     *  Sólo se ejecuta si la validación es correcta
     * @param <type> $ep
     */
    function execute($ep) {
        $vars=$ep->vars;
        $id_usuario=get_user_id($ep, $ep->session_vars['user']);
//        $titulo=$vars['titulo'];
//        $descripcion=$vars['descripcion'];
//        $fecha_inicio=$vars['fecha_inicio'];
//        $fecha_fin=$vars['fecha_fin'];
//        $credito=$vars['credito'];


        $titulo=$_REQUEST["titulo"];
        $descripcion=$_REQUEST["descripcion"];
        $fecha_inicio=$_REQUEST["fecha_inicio"];
        $fecha_fin=$_REQUEST["fecha_fin"];
        $credito=$_REQUEST["credito"];
        $num_mercados=$_REQUEST["num_mercados"];
        $max=(int)$_REQUEST["max"];
        $min=(int)$_REQUEST["min"];
        $ult=(int)$_REQUEST["ult"];
        $array_mercados[0]=$num_mercados;
        for ($index = 0; $index < $num_mercados; $index++) {
            $nombre_campo="mercado".($index+1);
            $array_mercados[$index+1]=$_REQUEST[$nombre_campo];
        }
        $dia_inicio=substr($fecha_inicio,0,2);
        $mes_inicio=substr($fecha_inicio,3,2);
        $ano_inicio=substr($fecha_inicio,6,4);
        $fecha_inicio= $ano_inicio."/".$mes_inicio."/".$dia_inicio;
        $dia_fin=substr($fecha_fin,0,2);
        $mes_fin=substr($fecha_fin,3,2);
        $ano_fin=substr($fecha_fin,6,4);
        $fecha_fin= $ano_fin."/".$mes_fin."/".$dia_fin;
        $num_afect=insertar_concurso($ep, $id_usuario, $titulo, $descripcion, $fecha_inicio, $fecha_fin, $credito, $array_mercados,$max,$min,$ult);
        if($num_afect!=1) {
            $ep->error("Error inesperado al crear concurso.");
        }else{
            $ep->concursocreado=true;
        }
    }
    /**
     *  Esto se ejecuta este o no validado
     * @param <type> $ep
     */
    function show($ep) {
        $usuario=$ep->session_vars['user'];
        $id_usuario=get_user_id($ep, $usuario);
        if(puede_crear_concursos($ep, $id_usuario)){
            if(!$ep->concursocreado){
                $titulo=$_REQUEST["titulo"];
                $descripcion=$_REQUEST["descripcion"];
                $fecha_inicio=$_REQUEST["fecha_inicio"];
                $fecha_fin=$_REQUEST["fecha_fin"];
                $credito=$_REQUEST["credito"];
                $max=(int)$_REQUEST["max"];
                $min=(int)$_REQUEST["min"];
                $ult=(int)$_REQUEST["ult"];
                $num_mercados=$_REQUEST["num_mercados"];
                for ($index = 0; $index < $num_mercados; $index++) {
                    $nombre_campo="mercado".($index+1);
                    $array_mercados[$index+1]=$_REQUEST[$nombre_campo];
                }
                ?>
<div id="div_form">

    <form  method="post" action="" onsubmit="return validaConcurso()">

        <div id="div_datos">
            <br>
           <fieldset>

                <legend>Crear nuevo concurso</legend>
                <div id="div_errores" class="error">

                </div>

                <div id="div_titulo">
                    <label id="label_titulo" for="titulo">Título:</label>
                    <input id="titulo" name="titulo" type="text" value="<?php echo $titulo?>"/>
                </div>

                <div id="div_descripcion">
                    <label id="label_descripcion" for="descripcion">Descripción:</label>
                    <input id="descripcion" name="descripcion" type="text" value="<?php echo $descripcion?>"/>
                </div>
                
                <div id="div_fecha_inicio">
                    <label id="fecha_inicio" for="fecha_inicio">Fecha de inicio: </label>
                    <input id="fecha_inicio" name="fecha_inicio" type="text" class="date-pick" value="<?php echo $fecha_inicio?>"/>
                </div>

                <div id="div_fecha_fin">
                    <label id="fecha_fin" for="fecha_fin">Fecha de final: </label>
                    <input id="fecha_fin" name="fecha_fin" type="text" class="date-pick" value="<?php echo $fecha_fin?>"/>
                </div>
                
                <div id="div_credito">
                    <label id="label_credito" for="credito">Crédito inicial:</label>
                    <input id="credito" name="credito" type="text" value="<?php echo $credito?>"/>
                </div>

                <div id="div_mercados">
                    <fieldset>

                        <legend>Mercados participantes</legend>
                        <?php $mercados=get_mercados($ep);
                        $count=$mercados->rowCount();
                        echo '<input type="hidden" name="num_mercados" value="'.$count.'" />';
                        $index=1;
                        while($count>0){
                            $row=$mercados->fetch(PDO::FETCH_ASSOC);
                            $mercado_numero="mercado".$row['id_mercado'];
                            $id_mercado=$row['id_mercado'];
                            $titulo=$row['titulo'];
                            ?>
                            <input id="<?php echo $mercado_numero; ?>" name="<?php echo $mercado_numero; ?>" <?php if($array_mercados[$index]==$index){echo 'checked="true"';}?> type="checkbox" value="<?php echo $id_mercado; ?>"/>
                            <label id="label_<?php echo $mercado_numero; ?>" for="<?php echo $mercado_numero; ?>"><?php echo $titulo; ?></label><br>
                            <?php
                                $count--;
                                $index++;
                        } ?>
                    </fieldset>
                </div>

                <div id="div_puntuacion">
                    <fieldset>
                        <legend>Puntuación</legend>
                        <div id="div_max">
                            <label id="label_max" for="max">Puntuación Ganador:</label>
                            <input id="titulo" name="max" type="text" value="<?php echo $max?>"/>
                        </div>

                        <div id="div_ult">
                            <label id="label_ult" for="ult">Número de jugadores que puntuarán:</label>
                            <input id="descripcion" name="ult" type="text" value="<?php echo $ult?>"/>
                        </div>

                        <div id="div_min">
                            <label id="label_min" for="min">Puntos que se llevara el último clasificado con puntuación:</label>
                            <input id="min" name="min" type="text" value="<?php echo $min?>"/>
                        </div>
                    </fieldset>
                </div>

                <input type="hidden" name="command" value="crea_concurso" />

            </fieldset>

            <div id="div_submit">
                <input id="submit" type="submit" name="submit" value="Crear Concurso" />
            </div>

        </div>

    </form>
    <script>
        $(function()
        {
                $('.date-pick').datePicker();
        });
    </script>

</div>

            <?php
            }else{
                echo "¡Concurso creado correctamente!";
            }
        }else{
            echo "¡No tienes permiso para crear concursos!";
        }
   }
?>